/**
* ostree_repo_read_commit:
* @self: Repo
- * @rev: Revision (ref or ASCII checksum)
+ * @ref: Ref or ASCII checksum
* @out_root: (out): An #OstreeRepoFile corresponding to the root
+ * @out_commit: (out): The resolved commit checksum
* @cancellable: Cancellable
* @error: Error
*
* Load the content for @rev into @out_root.
*/
gboolean
-ostree_repo_read_commit (OstreeRepo *self,
- const char *rev,
+ostree_repo_read_commit (OstreeRepo *self,
+ const char *ref,
GFile **out_root,
+ char **out_commit,
GCancellable *cancellable,
GError **error)
{
gboolean ret = FALSE;
gs_unref_object OstreeRepoFile *ret_root = NULL;
- gs_free char *resolved_rev = NULL;
+ gs_free char *resolved_commit = NULL;
- if (!ostree_repo_resolve_rev (self, rev, FALSE, &resolved_rev, error))
+ if (!ostree_repo_resolve_rev (self, ref, FALSE, &resolved_commit, error))
goto out;
- ret_root = _ostree_repo_file_new_for_commit (self, resolved_rev, error);
+ ret_root = _ostree_repo_file_new_for_commit (self, resolved_commit, error);
if (!ret_root)
goto out;
ret = TRUE;
ot_transfer_out_value(out_root, (GFile **) &ret_root);
+ ot_transfer_out_value(out_commit, &resolved_commit);
out:
return ret;
}
GCancellable *cancellable,
GError **error);
-gboolean ostree_repo_read_commit (OstreeRepo *self,
- const char *rev,
- GFile **out_root,
- GCancellable *cancellable,
- GError **error);
+gboolean ostree_repo_read_commit (OstreeRepo *self,
+ const char *ref,
+ GFile **out_root,
+ char **out_commit,
+ GCancellable *cancellable,
+ GError **error);
/**
* OstreeRepoListObjectsFlags:
gs_unref_object GFile *deploy_target_path = NULL;
gs_unref_object GFile *deploy_parent = NULL;
- if (!ostree_repo_read_commit (repo, csum, &root, cancellable, error))
+ if (!ostree_repo_read_commit (repo, csum, &root, NULL, cancellable, error))
goto out;
file_info = g_file_query_info (root, OSTREE_GIO_FAST_QUERYINFO,
goto out;
}
- if (!ostree_repo_read_commit (repo, revision, &commit_root, cancellable, error))
+ if (!ostree_repo_read_commit (repo, revision, &commit_root, NULL, cancellable, error))
goto out;
if (!get_kernel_from_tree (commit_root, &tree_kernel_path, &tree_initramfs_path,
}
rev = argv[1];
- if (!ostree_repo_read_commit (repo, rev, &root, NULL, error))
+ if (!ostree_repo_read_commit (repo, rev, &root, NULL, NULL, error))
goto out;
stdout_stream = g_unix_output_stream_new (1, FALSE);
gs_unref_object GFile *subtree = NULL;
gs_unref_object GFileInfo *file_info = NULL;
- if (!ostree_repo_read_commit (repo, resolved_commit, &root, cancellable, error))
+ if (!ostree_repo_read_commit (repo, resolved_commit, &root, NULL, cancellable, error))
goto out;
if (subpath)
}
else if (strcmp (tree_type, "ref") == 0)
{
- if (!ostree_repo_read_commit (repo, tree, &arg, cancellable, error))
+ if (!ostree_repo_read_commit (repo, tree, &arg, NULL, cancellable, error))
goto out;
if (!ostree_repo_write_directory_to_mtree (repo, arg, mtree, modifier,
{
gs_unref_object GFile *parent_root;
- if (!ostree_repo_read_commit (repo, parent, &parent_root, cancellable, error))
+ if (!ostree_repo_read_commit (repo, parent, &parent_root, NULL, cancellable, error))
goto out;
if (g_file_equal (root, parent_root))
}
else
{
- if (!ostree_repo_read_commit (repo, arg, &ret_file, cancellable, error))
+ if (!ostree_repo_read_commit (repo, arg, &ret_file, NULL, cancellable, error))
goto out;
}
}
rev = argv[1];
- if (!ostree_repo_read_commit (repo, rev, &root, cancellable, error))
+ if (!ostree_repo_read_commit (repo, rev, &root, NULL, cancellable, error))
goto out;
if (argc > 2)